Build benchmarks on VMs instead of metal instances which we use for runs - #9289
Build benchmarks on VMs instead of metal instances which we use for runs#9289AdamGS wants to merge 3 commits into
Conversation
Signed-off-by: Adam Gutglick <adam@spiraldb.com>
Merging this PR will degrade performance by 0.51%
Warning Please fix the performance issues or acknowledge them on CodSpeed. Performance Changes
Tip Investigate this regression by commenting Comparing Footnotes
|
Polar Signals Profiling ResultsLatest Run
Previous Runs (10)
Powered by Polar Signals Cloud |
Benchmarks: PolarSignals Profiling 📖Vortex (geomean): 1.010x ➖ datafusion / vortex-file-compressed / ns (1.010x ➖, 1↑ 0↓)
No file size changes detected. |
Benchmarks: TPC-H SF=1 on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (0.991x ➖, 0↑ 0↓)
datafusion / parquet / ns (0.983x ➖, 1↑ 1↓)
duckdb / vortex-file-compressed / ns (0.979x ➖, 2↑ 0↓)
duckdb / parquet / ns (0.998x ➖, 0↑ 0↓)
File Size Changes (9 files changed, -43.9% overall, 0↑ 9↓)
Totals:
|
Benchmarks: FineWeb NVMe 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.013x ➖, 0↑ 0↓)
datafusion / parquet / ns (1.002x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed / ns (1.002x ➖, 1↑ 1↓)
duckdb / parquet / ns (0.993x ➖, 0↑ 0↓)
File Size Changes (2 files changed, -46.3% overall, 0↑ 2↓)
Totals:
|
Benchmarks: TPC-DS SF=1 on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.004x ➖, 0↑ 0↓)
datafusion / parquet / ns (0.999x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed / ns (0.986x ➖, 10↑ 10↓)
duckdb / parquet / ns (1.008x ➖, 2↑ 5↓)
File Size Changes (25 files changed, -43.5% overall, 0↑ 25↓)
Totals:
|
Benchmarks: Clickbench Sorted on NVME 📖Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (0.995x ➖, 0↑ 1↓)
datafusion / parquet / ns (1.032x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed / ns (0.971x ➖, 2↑ 0↓)
duckdb / parquet / ns (1.006x ➖, 0↑ 0↓)
File Size Changes (201 files changed, -42.8% overall, 54↑ 147↓)
Totals:
|
Benchmarks: TPC-H SF=10 on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.006x ➖, 0↑ 0↓)
datafusion / parquet / ns (0.992x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed / ns (0.993x ➖, 0↑ 0↓)
duckdb / parquet / ns (1.003x ➖, 0↑ 0↓)
File Size Changes (9 files changed, -44.0% overall, 0↑ 9↓)
Totals:
|
Benchmarks: Clickbench on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (0.990x ➖, 2↑ 1↓)
datafusion / parquet / ns (0.996x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed / ns (1.001x ➖, 1↑ 1↓)
duckdb / parquet / ns (0.998x ➖, 0↑ 0↓)
File Size Changes (101 files changed, -39.2% overall, 0↑ 101↓)
Totals:
|
Benchmarks: Statistical and Population Genetics 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
duckdb / vortex-file-compressed / ns (0.944x ➖, 4↑ 1↓)
duckdb / parquet / ns (1.004x ➖, 0↑ 0↓)
File Size Changes (2 files changed, -32.3% overall, 0↑ 2↓)
Totals:
|
Benchmarks: FineWeb S3 📖Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.130x ➖, 0↑ 2↓)
datafusion / parquet / ns (0.887x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed / ns (1.030x ➖, 0↑ 0↓)
duckdb / parquet / ns (0.817x ➖, 1↑ 0↓)
|
Benchmarks: TPC-H SF=1 on S3 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (0.728x ➖, 6↑ 0↓)
datafusion / parquet / ns (0.990x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed / ns (0.996x ➖, 0↑ 0↓)
duckdb / parquet / ns (1.001x ➖, 0↑ 0↓)
|
|
|
||
| bench: | ||
| needs: build | ||
| if: ${{ !cancelled() }} |
There was a problem hiding this comment.
does this mean we would run bench even if build fails? I mean as long as it is not cancelled we will dispatch the metal bench job only for it to fail soon?
There was a problem hiding this comment.
I think needs takes care of that?
There was a problem hiding this comment.
I think needs only is for dependency order, but if is evaluated to determine when to run the child. If we omit if the default is success but we are overriding it to be only to run if not cancelled afaik
| sccache: s3 | ||
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 | ||
| - uses: ./.github/actions/setup-rust | ||
| if: matrix.benchmark.id == 'string-bench' |
There was a problem hiding this comment.
Why is the string-bench special in here?
There was a problem hiding this comment.
good question, let me fix that
Signed-off-by: Adam Gutglick <adam@spiraldb.com>
Benchmarks: PolarSignals Profiling 📖Vortex (geomean): 0.995x ➖ datafusion / vortex-file-compressed / ns (0.995x ➖, 0↑ 1↓)
No file size changes detected. |
Benchmarks: FineWeb NVMe 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (0.998x ➖, 0↑ 0↓)
datafusion / vortex-compact / ns (0.997x ➖, 0↑ 0↓)
datafusion / parquet / ns (1.006x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed / ns (1.047x ➖, 0↑ 3↓)
duckdb / vortex-compact / ns (1.004x ➖, 0↑ 0↓)
duckdb / parquet / ns (1.010x ➖, 0↑ 0↓)
No file size changes detected. |
Benchmarks: TPC-H SF=1 on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.000x ➖, 0↑ 0↓)
datafusion / vortex-compact / ns (1.000x ➖, 0↑ 0↓)
datafusion / parquet / ns (1.021x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed / ns (1.016x ➖, 0↑ 1↓)
duckdb / vortex-compact / ns (1.016x ➖, 0↑ 1↓)
duckdb / parquet / ns (0.998x ➖, 0↑ 0↓)
No file size changes detected. |
🚨🚨🚨❌❌❌ SQL BENCHMARK FAILED ❌❌❌🚨🚨🚨Benchmark |
Benchmarks: TPC-DS SF=1 on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.002x ➖, 1↑ 0↓)
datafusion / vortex-compact / ns (0.997x ➖, 0↑ 1↓)
datafusion / parquet / ns (0.997x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed / ns (0.979x ➖, 10↑ 6↓)
duckdb / vortex-compact / ns (0.993x ➖, 6↑ 0↓)
duckdb / parquet / ns (0.985x ➖, 6↑ 2↓)
No file size changes detected. |
Benchmarks: FineWeb S3 📖Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.187x ➖, 0↑ 4↓)
datafusion / vortex-compact / ns (1.138x ➖, 0↑ 2↓)
datafusion / parquet / ns (1.031x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed / ns (1.022x ➖, 0↑ 0↓)
duckdb / vortex-compact / ns (0.972x ➖, 0↑ 0↓)
duckdb / parquet / ns (0.812x ➖, 1↑ 0↓)
|
Benchmarks: Appian on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-compact / ns (0.996x ➖, 0↑ 0↓)
datafusion / parquet / ns (0.988x ➖, 0↑ 0↓)
duckdb / vortex-compact / ns (1.004x ➖, 0↑ 0↓)
duckdb / parquet / ns (1.003x ➖, 0↑ 0↓)
File Size Changes (10 files changed, -63.8% overall, 0↑ 10↓)
Totals:
|
Benchmarks: Statistical and Population Genetics 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
duckdb / vortex-file-compressed / ns (0.982x ➖, 2↑ 1↓)
duckdb / vortex-compact / ns (1.014x ➖, 1↑ 1↓)
duckdb / parquet / ns (0.996x ➖, 0↑ 0↓)
No file size changes detected. |
Benchmarks: TPC-H SF=10 on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.007x ➖, 0↑ 0↓)
datafusion / vortex-compact / ns (0.996x ➖, 0↑ 0↓)
datafusion / parquet / ns (0.995x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed / ns (1.002x ➖, 0↑ 0↓)
duckdb / vortex-compact / ns (1.000x ➖, 0↑ 0↓)
duckdb / parquet / ns (0.982x ➖, 1↑ 0↓)
No file size changes detected. |
BENCHMARK FAILEDBenchmark |
Benchmarks: Clickbench on NVME 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.005x ➖, 2↑ 3↓)
datafusion / vortex-compact / ns (1.011x ➖, 0↑ 1↓)
datafusion / parquet / ns (1.000x ➖, 1↑ 0↓)
duckdb / vortex-file-compressed / ns (0.971x ➖, 5↑ 1↓)
duckdb / vortex-compact / ns (0.976x ➖, 7↑ 1↓)
duckdb / parquet / ns (0.990x ➖, 0↑ 0↓)
No file size changes detected. |
BENCHMARK FAILEDBenchmark |
Benchmarks: TPC-H SF=1 on S3 📖Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed / ns (1.205x ➖, 1↑ 7↓)
datafusion / vortex-compact / ns (0.892x ➖, 3↑ 3↓)
datafusion / parquet / ns (1.119x ➖, 0↑ 2↓)
duckdb / vortex-file-compressed / ns (0.953x ➖, 2↑ 1↓)
duckdb / vortex-compact / ns (1.069x ➖, 0↑ 0↓)
duckdb / parquet / ns (1.053x ➖, 0↑ 0↓)
|
BENCHMARK FAILEDBenchmark |
Benchmarks: TPC-H SF=10 on S3 📖Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-compact / ns (1.029x ➖, 2↑ 3↓)
datafusion / parquet / ns (0.865x ➖, 4↑ 2↓)
duckdb / vortex-compact / ns (1.042x ➖, 0↑ 1↓)
duckdb / parquet / ns (1.047x ➖, 0↑ 0↓)
|
Rationale for this change
Metal capacity will always be limited, better to use VMs for the build step to make better use of it.